﻿do
	IGAS:NewAddon("IGAS_Studio")

	local _DB

	------------------------------------------------------------
	-- ScriptType
	------------------------------------------------------------
	_DB = CreateHelpDB(IGAS.GUI.Widget.MessageFrame, "ScriptType")
	_DB:SetBaseHelpDB(CreateHelpDB(IGAS.GUI.Widget.FontFrame, "ScriptType"))

	------------------------------------------------------------
	-- Function
	------------------------------------------------------------
	_DB = CreateHelpDB(IGAS.GUI.Widget.MessageFrame, "Function")
	_DB:SetBaseHelpDB(CreateHelpDB(IGAS.GUI.Widget.FontFrame, "Function"))

	_DB:AddCodeHelp("Clear", [=[Removes all messages displayed in the frame]=], [=[Clear()]=])
	_DB:AddCodeHelp("SetInsertMode", [=[Sets the position at which new messages are added to the frame]=], [=[SetInsertMode("position")]=])
	_DB:AddCodeHelp("GetTimeVisible", [=[Returns the amount of time for which a message remains visible before beginning to fade out]=], [=[GetTimeVisible()]=])
	_DB:AddCodeHelp("GetInsertMode", [=[Returns the position at which new messages are added to the frame]=], [=[GetInsertMode()]=])
	_DB:AddCodeHelp("SetTimeVisible", [=[Sets the amount of time for which a message remains visible before beginning to fade out]=], [=[SetTimeVisible(time)]=])
	_DB:AddCodeHelp("SetFadeDuration", [=[Sets the duration of the fade-out animation for disappearing messages]=], [=[SetFadeDuration(duration)]=])
	_DB:AddCodeHelp("SetFading", [=[Sets whether messages added to the frame automatically fade out after a period of time]=], [=[SetFading(fading)]=])
	_DB:AddCodeHelp("SetIndentedWordWrap", [=[Sets whether long lines of text are indented when wrapping]=], [=[SetIndentedWordWrap(indent)]=])
	_DB:AddCodeHelp("GetIndentedWordWrap", [=[Returns whether long lines of text are indented when wrapping]=], [=[GetIndentedWordWrap()]=])
	_DB:AddCodeHelp("GetFadeDuration", [=[Returns the duration of the fade-out animation for disappearing messages]=], [=[GetFadeDuration()]=])
	_DB:AddCodeHelp("AddMessage", [=[Adds a message to those listed in the frame]=], [=[AddMessage("text" [, red [, green [, blue [, alpha]]]])]=])
	_DB:AddCodeHelp("GetFading", [=[Returns whether messages added to the frame automatically fade out after a period of time]=], [=[GetFading()]=])
	------------------------------------------------------------
	-- Property
	------------------------------------------------------------
	_DB = CreateHelpDB(IGAS.GUI.Widget.MessageFrame, "Property")
	_DB:SetBaseHelpDB(CreateHelpDB(IGAS.GUI.Widget.FontFrame, "Property"))

	_DB:AddCodeHelp("Fading", [[whether messages added to the frame automatically fade out after a period of time]], IGAS:GetPropertyType("boolean"))
	_DB:AddCodeHelp("FadeDuration", [[the duration of the fade-out animation for disappearing messages]], IGAS:GetPropertyType("number"))
	_DB:AddCodeHelp("TimeVisible", [[the amount of time for which a message remains visible before beginning to fade out]], IGAS:GetPropertyType("number"))
	_DB:AddCodeHelp("InsertMode", [[the position at which new messages are added to the frame]], IGAS:GetPropertyType("InsertMode"))
	_DB:AddCodeHelp("IndentedWordWrap", [[whether long lines of text are indented when wrapping]], IGAS:GetPropertyType("boolean"))
end
